自分でエンドポイントやSPARQLを試してみようと思った方に向け、Virtuosoのインストール方法を紹介します。今回はWindow編です。
Linuxについてはやや実践向けの内容がSPARQLthonのページ(こことかここ)に記載されていますのでご参考ください。
セマンティックWebのSPARQLが、リレーショナルDBでいうところのSQLだとすれば、
RDF形式のデータをストアするデータベースである”トリプルストア”はRDBMSに相当します。
RDBMSにOracleやらPostgreSQLやらがあるように、トリプルストアも色々なベンダーが開発しており、
VirtuosoはOpenLinkSoftware社が提供しているトリプルストアの製品名になります。
Virtuosoには商用版とオープンソース版があり、今回はオープンソース版で紹介します。
ダウンロード
まずは、ダウンロードサイトにアクセスして、最新バージョン(現在は7.1が最新)のzipファイルをダウンロードします。
ダウンロードしたzipファイル(virtuoso-opensource-x64-YYYYMMDD.zip)を解凍すると、
「virtuoso-opensource」というディレクトリがあるので、これをインストールしたいディレクトリに移動します。
変更権限のある場所であればどこでもいいですが、今回はC:\Program Files\に移動したものとします。
環境変数の設定
操作しやすいように環境変数を設定しておきます。
新規変数として「VIRTUOSO_HOME」を追加して、コピーしたディレクトリを指定します。
例:VIRTUOSO_HOME=C:\Program Files\virtuoso-opensource\
PATHに次のディレクトリを追記します。
★注意: 既存の値は消さず、末尾に追記してください。パスの区切りは;で記載しますので最初に;を付けていますが、既にPathの末尾に;がある場合には一文字目は不要です。
;%VIRTUOSO_HOME%/bin;%VIRTUOSO_HOME%/lib
サービスの登録
Windowsの場合には起動の前にVirtuosoのインスタンスを作成してサービスとして登録しておく必要があります。この手順はインストール時に一度実行するだけで大丈夫です。
コマンドプロンプトを管理者権限で起動し(右クリックで「管理者として実行」を選択)、以下のコマンドでインスタンスを新規作成してサービスに登録します。
“Virtuoso Instance1″の部分は任意の文字列で構いませんが、起動時の識別子として使用する名前になります。
1 2 |
> cd %VIRTUOSO_HOME%/database > virtuoso-t +service create +instance "Virtuoso Instance1" +configfile virtuoso.ini |
“The Virtuoso service has been registered” みたいなメッセージがでれば登録され、サービスの一覧([コントロールパネル] – [管理ツール] – [サービス])に表示されるようになります。自動起動をしたい場合にはここから設定できます。
起動と停止方法
以下のコマンドで起動します。引数には先ほど作成したインスタンス名を指定してください。
1 2 |
> virtuoso-t +instance "Virtuoso Instance1" +service start The Virtuoso_Virtuoso Instance1 service is being started |
起動確認のために、対話型ツールのisql を起動してみましょう。SQL> が表示されればOK!
1 2 3 4 5 6 |
>isql 1111 dba dba Connected to OpenLink Virtuoso Driver: 07.10.3207 OpenLink Virtuoso ODBC Driver OpenLink Interactive SQL (Virtuoso), version 0.9849b. Type HELP; for help and EXIT; to exit. SQL> |
また、GUIツールであるVirtuoso conductorが8890ポートで起動しているはずなので、ブラウザを開いて、次のアドレスにアクセスして表示されることを確認してください。
http://localhost:8890/
正常に起動したことを確認できれば、一旦停止してみましょう。
停止には専用コマンドを使用する方法と、isqlでshutdownコマンドを使う方法があります。
1 |
> virtuoso-t +instance "Virtuoso Instance1" +service stop |
または
1 |
SQL> shutdown(); |
Virtuosoをアンインストールしたい、バージョンアップの為に現行のサービスを消したいという場合には、登録されているサービスを削除します。二度とVirtuosoを使わない場合には、上記で設定した環境変数の削除、インストールディレクトリ削除をしてください。
インスタンス名を忘れてしまったなぁという場合には、サービスの一覧([コントロールパネル] – [管理ツール] – [サービス])から確認できます。OpenLink Virtuoso Server [ここにインスタンス名が表示される]
1 |
> virtuoso-t +instance "Virtuoso Instance1" +service delete |
次の記事でデータをロードしてSPARQLを叩く方法を紹介します。
※2014.6.18追記:
・サービス登録の際にDBディレクトリに移動する記載がもれていたため追記
・PATHの追加についての注意書きを記載
・サービスの削除方法(アンインストール)を追記